//
// Created by tunm on 2021/5/25.
//

#ifndef LEARN_NODE_H
#define LEARN_NODE_H
template <class T>
class LinkedList;

template <class T>
class Node {
private:
    Node *d_next;
    T d_data;
public:
    Node();
    Node(T);
    const T&elem();

    Node<T> *next();

    ~Node();

    friend class LinkedList<T>;

    template<typename R>
    friend std::ostream &operator<<(std::ostream &, const Node<R> &);
};


#endif //LEARN_NODE_H
